package com.aosd.project.aonotepad.aspects.transaction;

import com.aosd.project.aonotepad.domain.sharing.SharingStrategy;

public aspect TransactionManagementAspect 
{
	pointcut captureSharing(SharingStrategy strategy) : this(strategy) && execution(void com.aosd.project.aonotepad.domain.sharing.*.share(..) ); 
	
	after(SharingStrategy strategy) throwing() : captureSharing(strategy)
	{
		strategy.rollback();
	}
	
}
